package com.njmd.mdbs.web.service;

import java.util.List;
import java.util.Map;

import org.springframework.web.multipart.MultipartFile;

import com.njmd.framework.base.BaseCrudService;
import com.njmd.mdbs.web.entity.sys.SysConfig;

/**
 * 系统配置管理接口
 * 
 * @author sunqw
 * @since 2013.10.12
 */
public interface SysConfigService extends BaseCrudService<SysConfig, Long>
{

	/**
	 * 获得当前系统中License方面的参数键值对
	 * 
	 * @return
	 */
	public List<SysConfig> getLicenseParams();

	/**
	 * 根据配置的键更新其值
	 * 
	 * @param code
	 * @param value
	 */
	public void update(String code, String value);

	/**
	 * 根据配置的键更新其值
	 * 
	 * @param params
	 */
	public void update(Map<String, String> params);

	/**
	 * 根据配置的键获得其配置信息
	 * 
	 * @param code
	 * @return
	 */
	public SysConfig getConfigByCode(String code);

	/**
	 * 根据parentId查询所属子类
	 * 
	 * @param id
	 * @return
	 */
	int getCountParentId(Long id);

	/**
	 * 分类查询
	 */
	List<SysConfig> findAllType();

	/**
	 * 参数项查询
	 */
	List<SysConfig> findAllItem();

	String getUploadfile(MultipartFile file, Long id) throws Exception;
}
